﻿using Production.CommonLib.Models;
using Swimj.CommonLib.Base;

namespace Production.RazorLib.Services
{
    public interface ITechnologyService
    {
        Task<PaginatedResult<TechnologyInfoResponseDto>?> QueryTechnologiesByPage(TechnologySearchRequestDto searchRequestDto);

        Task<Result<TechnologyInfoResponseDto>?> UpdateTechnology(int key, TechnologyEditRequestDto editRequestDto);
        
        Task<Result<TechnologyInfoResponseDto>?> CreateTechnology(TechnologyEditRequestDto editRequestDto);
        
        Task<Result<TechnologyInfoResponseDto>?> GetTechnology(int key);
        
        Task<Result<IList<TechnologyInfoResponseDto>>?> QueryTechnologies(ProcessSearchRequestDto processSearchRequestDto);
    }
}